package safeCommitter.test.report;

import java.util.LinkedList;
import java.util.List;

import safeCommitter.model.TestType;
import safeCommitter.model.adpters.ISCTest;
import safeCommitter.test.executor.common.TestResultType;

public class RootClazzResult implements ISCTestResult, Cloneable {

	private List<SCClazzTestResult> children = new LinkedList<SCClazzTestResult>();

	public List<? extends ISCTestResult> getChildren() {
		return children;
	}

	public void addChildren(final SCClazzTestResult result) {
		children.add(result);
	}

	public TestResultType getStatus() {
		return null;
	}

	public String getPath() {
		return null;
	}

	@Override
	public Object clone() throws CloneNotSupportedException {
		RootClazzResult cloneResult = new RootClazzResult();
		List<SCClazzTestResult> clonedChildren = new LinkedList<SCClazzTestResult>();
		for (SCClazzTestResult result : children) {
			clonedChildren.add((SCClazzTestResult) result.clone());
		}
		cloneResult.setChildren(clonedChildren);
		return cloneResult;
	}

	void setChildren(final List<SCClazzTestResult> children) {
		this.children = children;
	}

	public TestType getTestType() {
		throw new UnsupportedOperationException();
	}

	public ISCTest getInputTest() {
		// TODO Auto-generated method stub
		return null;
	}

	public String getClassName() {
		// TODO Auto-generated method stub
		return null;
	}

	public String getDescription() {
		// TODO Auto-generated method stub
		return null;
	}

}
